#include "lightboard.h"

LightBoard::LightBoard():QWidget()
{

    /*
      cases est un vecteur de 26 cases comprenant toutes les lettres de l'alphabet par ordre alphabétique.
      */
    int i = 0;
    QString s;
    for(char c = 'A'; c <= 'Z'; ++c)
    {
        s = c;
        cases<<new QLabel(s);
        cases[i]->setAlignment(Qt::AlignCenter);
        QFont f ("Arial",15);
        cases[i]->setFont(f);
        cases[i]->setStyleSheet("QLabel { background-color : black; color : white;}");
        ++i;
    }
    QGridLayout *layout_lightboard = new QGridLayout;


    layout_lightboard->addWidget(cases[0], 0,0); //position de a suivant un clavier azerty
    layout_lightboard->addWidget(cases[1], 4,10); //position de b
    layout_lightboard->addWidget(cases[2], 4,6); // c
    layout_lightboard->addWidget(cases[3], 2,5);// d
    layout_lightboard->addWidget(cases[4], 0,4); // e
    layout_lightboard->addWidget(cases[5], 2,7); // f
    layout_lightboard->addWidget(cases[6],2,9); // g
    layout_lightboard->addWidget(cases[7],2,11); // h
    layout_lightboard->addWidget(cases[8], 0,14); // i
    layout_lightboard->addWidget(cases[9], 2,13); // j
    layout_lightboard->addWidget(cases[10], 2,15); // k
    layout_lightboard->addWidget(cases[11], 2,17); // l
    layout_lightboard->addWidget(cases[12], 2,19); // m
    layout_lightboard->addWidget(cases[13], 4,12); // n
    layout_lightboard->addWidget(cases[14], 0,16); // o
    layout_lightboard->addWidget(cases[15], 0,18); // p
    layout_lightboard->addWidget(cases[16], 2,1); // q
    layout_lightboard->addWidget(cases[17], 0,6); // r
    layout_lightboard->addWidget(cases[18], 2,3); // s
    layout_lightboard->addWidget(cases[19], 0,8); // t
    layout_lightboard->addWidget(cases[20], 0,12); // u
    layout_lightboard->addWidget(cases[21], 4,8); // v
    layout_lightboard->addWidget(cases[22], 4,2); // w
    layout_lightboard->addWidget(cases[23], 4,4); // x
    layout_lightboard->addWidget(cases[24], 0,10); // y
    layout_lightboard->addWidget(cases[25], 0,2); // z

    this->setLayout(layout_lightboard);

}

void LightBoard::light(int i)
{
    for(int j = 0; j < 26; ++j)
    {
        cases[j]->setStyleSheet("QLabel { background-color : black; color : white;}");
    }
    cases[i]->setStyleSheet("QLabel { background-color : black; color : yellow;}");
}

void LightBoard::turnoff()
{
    for(int j = 0; j < 26; ++j)
    {
        cases[j]->setStyleSheet("QLabel { background-color : black; color : white;}");
    }
}
